#ifndef __CLI_HANDLER_H
#define __CLI_HANDLER_H

#include "utils.h"
#include "command.h"
#include "cli_transfile.h"
#include "cli_auth.h"

/**
 * @brief 响应结构体
 *
 */
typedef struct
{
    bool if_success;        /**< 是否成功 */
    char pwd[MAX_PATH_LEN]; /**< 用户当前工作目录 */
    int resp_len;           /**< 响应内容长度 */
    char *resp;             /**< 响应内容 */
} Response_t;


/**
 * @brief 处理命令
 *
 * @param user 用户信息
 * @param socket_fd 套接字
 * @param tunnel_fd 通道套接字
 */
void handleCommand(UserInfo_t *user, int socket_fd, int tunnel_fd);

#endif /* __CLI_HANDLER_H */
